home *** CD-ROM | disk | FTP | other *** search
/ Aminet 7 / Aminet 7 - August 1995.iso / Aminet / gfx / conv / ImageS_1.lha / Install < prev    next >
Text File  |  1995-05-14  |  12KB  |  581 lines

  1. ; ImageStudio Installer Utility
  2. ;
  3. ; This script is Copyright ©1995 Andy Dean and Graham Dean
  4. ;
  5.  
  6. (
  7.     ; Ask where to install it...
  8.  
  9.     (set destdir
  10.         (askdir
  11.             (prompt "Select where you would like to install "
  12.                 "ImageStudio. A drawer called 'ImageStudio' will "
  13.                 "be created here.")
  14.             (help "ImageStudio and all necessary files will be "
  15.                 "installed in the directory of your choice. You "
  16.                 "may wish to create a new directory for "
  17.                 "ImageStudio by using the 'Make New Drawer' "
  18.                 "gadget.\n\n"
  19.                 "You may install this version over your existing "
  20.                 "version of ImageStudio, but you will loose your "
  21.                 "current preference settings and some of your "
  22.                 "files may be overwritten with more recent "
  23.                 "versions. This may be undesirable if you have "
  24.                 "customised your 'Blank_isrx' file for example.")
  25.             (default @default-dest)
  26.             (disk)
  27.         )
  28.     )
  29.  
  30.     (set destdir
  31.         (tackon destdir "ImageStudio")
  32.     )
  33.  
  34.     (set @default-dest destdir)
  35.  
  36.     ; See whether this directory exists, if so warn the user
  37.  
  38.     (if (exists @default-dest) 
  39.         (
  40.             (if (= 0 (askbool
  41.                     (prompt "The 'ImageStudio' directory "
  42.                         "already exists, overwrite?")
  43.                     (help "You may stop the install to "
  44.                         "avoid overwriting your current "
  45.                         "version of ImageStudio.\n\n"
  46.                         "Continuing the install will "
  47.                         "overwrite your current files "
  48.                         "and you will loose your current "
  49.                         "preferences.")
  50.                     (choices "Yes" "Quit")
  51.                 ))
  52.  
  53.                 (
  54.  
  55.                 ; User wishes to quit
  56.  
  57.                 (exit (quiet))
  58.                 )
  59.  
  60.             )
  61.         )
  62.     )
  63.  
  64.     (message "ImageStudio will be installed in " @default-dest)
  65.  
  66.     ; Set up decompressor to work with
  67.  
  68.     (complete 0)
  69.  
  70.     (working "Setting up files...")
  71.  
  72.     (copyfiles
  73.         (source ("ImageStudio_1:"))
  74.         (dest ("ram:"))
  75.         (choices "LX" "pcefis")
  76.     )
  77.  
  78.     (working "Installing ImageStudio Program...")
  79.  
  80.     ; Create the directory if it doesn't exist
  81.  
  82.     (if (= 0 (exists @default-dest))
  83.         (
  84.             (makedir @default-dest
  85.                 (prompt "Creating 'ImageStudio' directory")
  86.                 (infos)
  87.             )
  88.         )
  89.     )
  90.  
  91.     ; Shall we install the 68020 version ?
  92.  
  93.     (set cpuversion
  94.         (askchoice
  95.             (prompt "Choose which version of ImageStudio to install "
  96.                 "based on your processor.")
  97.             (help "If you are running an Amiga A500, A600 or "
  98.                 "unexpanded A1500 or A2000 you should run the "
  99.                 "68000 version of ImageStudio.\n\n"
  100.                 "Users of Amiga A1200, A3000, A4000s or any of the "
  101.                 "above machines which have an accelerator card "
  102.                 "should use the 68020+ version of ImageStudio "
  103.                 "for increased performance.")
  104.             (choices "68000" "68020+")
  105.         )
  106.     )
  107.  
  108.     ; Set up the versions to install based on the CPU chosen
  109.  
  110.     (if (= 0 cpuversion)
  111.         (
  112.             (set cpu "000")
  113.         )
  114.  
  115.         (
  116.             (set cpu "020")
  117.         )
  118.     )
  119.  
  120.     (working "Decompressing ImageStudio executable...")
  121.  
  122.     (run ("ram:pcefis ImageStudio_1:ImageStudio%s.lha \"%s\"" cpu
  123.                 @default-dest))
  124.  
  125.     ; Install convolution filters
  126.  
  127.     (complete 30)
  128.  
  129.     (set convolvedir (tackon @default-dest "Convolves"))
  130.     (set doconvolve 1)
  131.  
  132.     (if (= 0 (exists convolvedir))
  133.         (
  134.             (makedir convolvedir
  135.                 (prompt "Creating 'Convolves' directory")
  136.                 (infos)
  137.             )
  138.         )
  139.  
  140.         ; Warn user about overwriting existing Convolves
  141.  
  142.         (
  143.             (if (askbool
  144.                 (prompt "Existing 'Convolves' directory found. "
  145.                     "Overwrite existing convolution filters?")
  146.                 (help "If you don't wish to overwrite your "
  147.                     "current convolution filters, skip this "
  148.                     "part of the installation process.")
  149.                 (choices "Yes" "Skip this part")
  150.                 )
  151.  
  152.                 ; If chosen overwrite
  153.  
  154.                 (
  155.                     (set doconvolve 1)
  156.                 )
  157.  
  158.                 ; If chosen skippy
  159.  
  160.                 (
  161.                     (set doconvolve 0)
  162.                 )
  163.             )
  164.         )
  165.     )
  166.  
  167.     (if doconvolve
  168.         (
  169.             (working "Decompressing convolution filters...")
  170.  
  171.             (run ("ram:pcefis ImageStudio_1:Convolves.lha \"%s\""
  172.                 convolvedir))
  173.         )
  174.     )
  175.  
  176.     ; Install palettes
  177.  
  178.     (complete 40)
  179.  
  180.     (set palettesdir (tackon @default-dest "Palettes"))
  181.     (set dopalettes 1)
  182.  
  183.     (if (= 0 (exists palettesdir))
  184.         (
  185.             (makedir palettesdir
  186.                 (prompt "Creating 'Palettes' directory")
  187.                 (infos)
  188.             )
  189.         )
  190.  
  191.         ; Warn user about overwriting existing Palettes
  192.  
  193.         (
  194.             (if (askbool
  195.                 (prompt "Existing 'Palettes' directory found. "
  196.                     "Overwrite existing palettes?")
  197.                 (help "If you don't wish to overwrite your "
  198.                     "current palettes, skip this "
  199.                     "part of the installation process.")
  200.                 (choices "Yes" "Skip this part")
  201.                 )
  202.  
  203.                 ; If chosen overwrite
  204.  
  205.                 (
  206.                     (set dopalettes 1)
  207.                 )
  208.  
  209.                 ; If chosen skippy
  210.  
  211.                 (
  212.                     (set dopalettes 0)
  213.                 )
  214.             )
  215.         )
  216.     )
  217.  
  218.     (if dopalettes
  219.         (
  220.             (working "Decompressing palettes...")
  221.  
  222.             (run ("ram:pcefis ImageStudio_1:Palettes.lha \"%s\""
  223.                 palettesdir))
  224.         )
  225.     )
  226.  
  227.     ; Install ARexx scripts
  228.  
  229.     (complete 45)
  230.  
  231.     (set rexxdir (tackon @default-dest "Rexx"))
  232.     (set dorexx 1)
  233.  
  234.     (if (= 0 (exists rexxdir))
  235.         (
  236.             (makedir rexxdir
  237.                 (prompt "Creating 'Rexx' directory")
  238.                 (infos)
  239.             )
  240.         )
  241.  
  242.         ; Warn user about overwriting existing Rexx scripts
  243.  
  244.         (
  245.             (if (askbool
  246.                 (prompt "Existing 'Rexx' directory found. "
  247.                     "Overwrite existing convolution filters?")
  248.                 (help "If you don't wish to overwrite your "
  249.                     "current ARexx scripts, skip this "
  250.                     "part of the installation process.")
  251.                 (choices "Yes" "Skip this part")
  252.                 )
  253.  
  254.                 ; If chosen overwrite
  255.  
  256.                 (
  257.                     (set dorexx 1)
  258.                 )
  259.  
  260.                 ; If chosen skippy
  261.  
  262.                 (
  263.                     (set dorexx 0)
  264.                 )
  265.             )
  266.         )
  267.     )
  268.  
  269.     (if dorexx
  270.         (
  271.             (working "Decompressing ARexx scripts...")
  272.  
  273.             (run ("ram:pcefis ImageStudio_1:Rexx.lha \"%s\""
  274.                 rexxdir))
  275.         )
  276.     )
  277.  
  278.     ; Install IO modules
  279.  
  280.     (complete 50)
  281.  
  282.     (set modulesdir (tackon @default-dest "Modules"))
  283.     (set domodules 1)
  284.  
  285.     (set iodir (tackon modulesdir "IO"))
  286.     (set doio 1)
  287.  
  288.     (if (= 0 (exists modulesdir))
  289.         (
  290.             (makedir modulesdir
  291.                 (prompt "Creating 'Modules' directory")
  292.                 (infos)
  293.             )
  294.         )
  295.  
  296.         ; Warn user about overwriting existing modules
  297.  
  298.         (
  299.             (if (askbool
  300.                 (prompt "Existing 'Modules' directory found. "
  301.                     "Overwrite existing modules?")
  302.                 (help "If you don't wish to overwrite your "
  303.                     "current modules, skip this "
  304.                     "part of the installation process.")
  305.                 (choices "Yes" "Skip this part")
  306.                 )
  307.  
  308.                 ; If chosen overwrite
  309.  
  310.                 (
  311.                     (set domodules 1)
  312.                 )
  313.  
  314.                 ; If chosen skippy
  315.  
  316.                 (
  317.                     (set domodules 0)
  318.                 )
  319.             )
  320.         )
  321.     )
  322.  
  323.     (if (= 0 (exists iodir))
  324.         (
  325.             (makedir iodir
  326.                 (prompt "Creating 'IO' directory")
  327.                 (infos)
  328.             )
  329.         )
  330.  
  331.         ; Warn user about overwriting existing IO modules
  332.  
  333.         (
  334.             (if (askbool
  335.                 (prompt "Existing 'IO' directory found. "
  336.                     "Overwrite existing IO modules?")
  337.                 (help "If you don't wish to overwrite your "
  338.                     "current IO modules, skip this "
  339.                     "part of the installation process.")
  340.                 (choices "Yes" "Skip this part")
  341.                 )
  342.  
  343.                 ; If chosen overwrite
  344.  
  345.                 (
  346.                     (set doio 1)
  347.                 )
  348.  
  349.                 ; If chosen skippy
  350.  
  351.                 (
  352.                     (set doio 0)
  353.                 )
  354.             )
  355.         )
  356.     )
  357.  
  358.     (if doio
  359.         (
  360.             (working "Decompressing IO modules...")
  361.  
  362.             (run ("ram:pcefis ImageStudio_1:IO%s.lha \"%s\"" cpu
  363.                 iodir))
  364.         )
  365.     )
  366.  
  367.     ; Ask whether should install demo pictures
  368.  
  369.     (complete 60)
  370.  
  371.     (set demopics
  372.         (askbool
  373.             (prompt "Do you want the demo pictures installed?")
  374.             (help "Installing the demo pics will allow you to perform "
  375.                 "some of the tutorials given in the documentation. "
  376.                 "All the demo pictures are small enough to load "
  377.                 "into the unregistered version of ImageStudio.")
  378.             (choices "Yes" "Skip this part")
  379.         )
  380.     )
  381.  
  382.     (if demopics
  383.         (
  384.             ; Create directory if needed
  385.  
  386.             (set picsdir (tackon @default-dest "Pics"))
  387.  
  388.             (if (= 0 (exists picsdir))
  389.                 (
  390.                     (makedir picsdir
  391.                         (prompt "Creating 'Pics' directory")
  392.                         (infos)
  393.                     )
  394.                 )
  395.             )
  396.  
  397.             ; Decompress the pics files
  398.  
  399.             (working "Decompressing demo pics...")
  400.  
  401.             (run ("ram:pcefis ImageStudio_1:Pics.lha \"%s\""
  402.                 picsdir))
  403.         )
  404.     )
  405.  
  406.     ; Copy the AmigaGuide.library if needed
  407.  
  408.     (complete 65)
  409.  
  410.     (working "Checking amigaguide.library version...")
  411.  
  412.     (copylib
  413.         (prompt "Copying amigaguide library to LIBS: directory...")
  414.         (help "The amigaguide.library is needed for online help. "
  415.             "Users of Workbench3.0 and above will have a more recent "
  416.             "version of this library and so can skip this part "
  417.             "of the installation.")
  418.         (source "ImageStudio_1:libs/amigaguide.library")
  419.         (dest "LIBS:")
  420.         (confirm)
  421.     )
  422.  
  423.     ; Copy keyfile if it exists
  424.  
  425.     (if (exists "ImageStudio_1:ImageStudio.keyfile")
  426.         (
  427.             (copyfiles
  428.                 (source "ImageStudio_1:ImageStudio.keyfile")
  429.                 (dest @default-dest)
  430.             )
  431.  
  432.             (set foundkeyfile (""))
  433.         )
  434.  
  435.         ; Else, note we didn't find one
  436.  
  437.         (
  438.             (set foundkeyfile (cat "No keyfile was found during "
  439.                 "installation. If you are a registered user make "
  440.                 "sure that you create a keyfile by selecting the "
  441.                 "'Create keyfile' option in the 'Project' menu "
  442.                 "of this version of ImageStudio. For more details "
  443.                 "see the 'Upgrading from v1.x.x' section in the "
  444.                 "'Introduction' of the manual."))
  445.         )
  446.     )
  447.  
  448.     ; Ask user what documentation the user wishes
  449.  
  450.     (set docchoice
  451.         (askoptions
  452.             (prompt "Which formats of documentation would you like "
  453.                 "installing in your 'Docs' directory?")
  454.             (help    "ImageStudio.txt is the ASCII (plain text) "
  455.                 "documentation file.\n\n"
  456.                 "ImageStudio.guide documentation is required for "
  457.                 "online help.\n\n"
  458.                 "ImageStudio.ps is the documentation in PostScript "
  459.                 "format.\n\n"
  460.                 "ImageStudio.dvi is for use with the Amiga TeX "
  461.                 "package.")
  462.             (choices "ImageStudio.txt" "ImageStudio.guide"
  463.                  "ImageStudio.ps" "ImageStudio.dvi")
  464.             (default 3)
  465.         )
  466.     )
  467.  
  468.     ; Create directory if needed
  469.  
  470.     (set docsdir (tackon @default-dest "Docs"))
  471.  
  472.     (if (= 0 (exists docsdir))
  473.         (
  474.             (makedir docsdir
  475.                 (prompt "Creating 'Docs' directory")
  476.                 (infos)
  477.             )
  478.         )
  479.     )
  480.  
  481.     ; Copy the readme, history and news files into the docs directory
  482.  
  483.     (complete 70)
  484.  
  485.     (copyfiles
  486.         (source "ImageStudio_1:")
  487.         (dest docsdir)
  488.         (choices "NEWS.txt" "HISTORY.txt" "README.txt" "Award.ilbm")
  489.         (infos)
  490.     )
  491.  
  492.     ; The (assigns) parameters in the askdisk commands is deliberate
  493.     ; as the user may want to decompress the .lha distribution archives
  494.     ; into directories instead of onto disks. This just make life easier.
  495.  
  496.     ; See if we want to install the ImageStudio.txt doc
  497.  
  498.     (if (= 1 (IN docchoice 0))
  499.         (
  500.             (askdisk (dest "ImageStudio_2") (assigns)
  501.             (prompt "Please insert disk ImageStudio_2")
  502.             (help "Insert Disk 2 in any drive. You may "
  503.                 "remove Disk 1, it will not be needed again."))
  504.  
  505.             (working "Decompressing ASCII documentation...")
  506.  
  507.             (run ("ram:pcefis ImageStudio_2:DocTXT.lha \"%s\""
  508.                 docsdir))
  509.         )
  510.     )
  511.  
  512.     ; See if we want to install the ImageStudio.guide doc
  513.  
  514.     (if (= 2 (IN docchoice 1))
  515.         (
  516.             (askdisk (dest "ImageStudio_2") (assigns)
  517.             (prompt "Please insert disk ImageStudio_2")
  518.             (help "Insert Disk 2 in any drive. You may "
  519.             "remove Disk 1, it will not be needed again.") )
  520.  
  521.             (working "Decompressing AmigaGuide documentation...")
  522.  
  523.             (run ("ram:pcefis ImageStudio_2:DocGUIDE.lha \"%s\""
  524.                 docsdir))
  525.         )
  526.     )
  527.  
  528.     ; See if we want to install the ImageStudio.ps doc
  529.  
  530.     (if (= 4 (IN docchoice 2))
  531.         (
  532.             (askdisk (dest "ImageStudio_2") (assigns)
  533.             (prompt "Please insert disk ImageStudio_2")
  534.             (help "Insert Disk 2 in any drive. You may "
  535.             "remove Disk 1, it will not be needed again.") )
  536.  
  537.             (working "Decompressing PostScript documentation...")
  538.  
  539.             (run ("ram:pcefis ImageStudio_2:DocPS.lha \"%s\""
  540.                 docsdir))
  541.         )
  542.     )
  543.  
  544.     ; See if we want to install the ImageStudio.dvi doc
  545.  
  546.     (if (= 8 (IN docchoice 3))
  547.         (
  548.             (askdisk (dest "ImageStudio_2") (assigns)
  549.             (prompt "Please insert disk ImageStudio_2")
  550.             (help "Insert Disk 2 in any drive. You may "
  551.             "remove Disk 1, it will not be needed again.") )
  552.  
  553.             (working "Decompressing DVI documentation...")
  554.  
  555.             (run ("ram:pcefis ImageStudio_2:DocDVI.lha \"%s\""
  556.                 docsdir))
  557.         )
  558.     )
  559.  
  560.     ; Say goodbye
  561.  
  562.     (set endmessage (cat "Do not forget to set the value of the TEMPDIR "
  563.         "preference so that the virtual memory swap files can be created "
  564.         "on your hard disk instead of taking lots of RAM.\n\n"))
  565.  
  566.     (if (<> foundkeyfile "")
  567.         (
  568.             (set endmessage (cat endmessage foundkeyfile))
  569.         )
  570.     )
  571.  
  572.     (complete 100)
  573.  
  574.     (message endmessage)
  575.  
  576.     ; Cleanup
  577.  
  578.     (delete ("ram:LX"))
  579.     (delete ("ram:pcefis"))
  580. )
  581.